home *** CD-ROM | disk | FTP | other *** search
/ Programming Languages Suite / ProgramD2.iso / Borland / Borland C++ V5.02 / SCRPTEXM.PAK / SORT.SPP < prev    next >
Text File  |  1997-05-06  |  754b  |  33 lines

  1. //--------------------------------------------------------------------------
  2. // Object Scripting
  3. // Copyright (c) 1996 by Borland International, All Rights Reserved
  4. //
  5. // SORT.SPP: Sort. Quick Sort routines.
  6. //--------------------------------------------------------------------------
  7.  
  8. QuickSort(v, left, right)
  9. {
  10.   declare last;
  11.  
  12.   if (left >= right) {
  13.     return;
  14.   }
  15.  
  16.   QuickSortSwap(v, left, (left + right) / 2);
  17.   last = left;
  18.   for (declare i = left + 1; i <= right; i++) {
  19.     if (v[i] < v[left]) QuickSortSwap(v, ++last, i);
  20.   }
  21.   QuickSortSwap(v, left, last);
  22.   QuickSort(v, left, last - 1);
  23.   QuickSort(v, last + 1, right);
  24. }
  25.  
  26. QuickSortSwap(v, i, j)
  27. {
  28.   declare tmp;
  29.   tmp = v[i];
  30.   v[i] = v[j];
  31.   v[j] = tmp;
  32. }
  33.